Refactor window handling, improve theme support, and update dependencies#1807
Open
ItsEeleeya wants to merge 126 commits into
Open
Refactor window handling, improve theme support, and update dependencies#1807ItsEeleeya wants to merge 126 commits into
ItsEeleeya wants to merge 126 commits into
Conversation
The header height now matches that of windows with Toolbars on macOS 26
…ier + fix onboarding decorations
The header height now matches that of windows with Toolbars on macOS 26
…ier + fix onboarding decorations
…a/Cap into next-base-improvements
…lugin_window_state's deny list
Co-authored-by: tembo[bot] <208362400+tembo[bot]@users.noreply.github.com>
Co-authored-by: tembo[bot] <208362400+tembo[bot]@users.noreply.github.com>
Co-authored-by: tembo[bot] <208362400+tembo[bot]@users.noreply.github.com>
Co-authored-by: tembo[bot] <208362400+tembo[bot]@users.noreply.github.com>
…a/Cap into next-base-improvements
| ); | ||
| } | ||
| } | ||
| } No newline at end of file |
There was a problem hiding this comment.
Nit: this file is missing a trailing newline (\\ No newline at end of file), which tends to cause noisy diffs.
Suggested change
| } | |
| } |
| "core:webview:default", | ||
| "core:webview:allow-create-webview-window", | ||
| "core:app:allow-version", | ||
| "core:app:allow-set-app-theme", |
There was a problem hiding this comment.
This adds core:app:allow-set-app-theme to the default capability. If this is only needed for specific windows/flows, consider scoping it to a narrower capability to keep the allowlist tight.
Co-authored-by: tembo[bot] <208362400+tembo[bot]@users.noreply.github.com>
Member
|
hey @greptileai please review the PR |
Member
|
hey @greptileai please re-review the pr |
| showMinimize={false} | ||
| showZoom={false} | ||
| /> | ||
| {isMacOS && !isSettings() && <div class="h-full w-[70px]" />} |
There was a problem hiding this comment.
This spacer is purely layout; adding aria-hidden avoids it ever being treated as meaningful structure (and makes the intent a bit clearer).
Suggested change
| {isMacOS && !isSettings() && <div class="h-full w-[70px]" />} | |
| {isMacOS && !isSettings() && <div class="h-full w-[70px]" aria-hidden="true" />} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Refactor window handling, improve theme support, and modernize native integration
Overview
This PR refactors a few things with small improvements as a base for upcoming PRs. The changes modernize how windows are revealed, streamline macOS integration with native AppKit APIs, and better theme handling.
Key Changes
Window Management Refactoring
AutoRevealWindowOnReady: Automatically shows windows once content is loadedRevealWindowWithSuspense: Defers visibility for windows like Settings until routing and child mounting completesShowCapWindow→CapWindowthroughout the codebaseAppDelegateas Tauri now supports custom traffic lights insetdata-tauri-drag-region="deep"attribute (eliminates scattered manual markers)onMouseDown={showCropOptionsMenu}in Editor crop section withonClickas keyboard/touch fallbackTheme/Appearance Improvements
AppTheme→Appearance(with serde fallback for backward compatibility)Code Organization
src-tauri/src/display_utils.rsout ofwindows.rsMonitorExtandCursorMonitorInfotypes organizedpanel_manager.rs: Now macOS-only with streamlined logicmenu.rsmoduleNative Platform Integration
objc2ecosystem crates (app-kit, foundation, permissions)objc2-app-kitversionWebviewWindowExttrait withwith_nswindow_on_main()utility for direct AppKit window accesstauri_plugin_window_statedenylist)UI/UX Enhancements
scale-50class)Dependencies & Plugins
tauri-plugin-prevent-default: Enables default context menu only during developmentTechnical Notes
objc2crates instead of legacy objc/cocoaGreptile Summary
This PR refactors desktop window handling and native integration. The main changes are:
ShowCapWindowtoCapWindowacross Rust and generated bindings.themetoappearancewith persisted-store compatibility.Confidence Score: 5/5
This looks safe to merge.
Important Files Changed
appearancewhile accepting the old persisted key.Reviews (3): Last reviewed commit: "Merge branch 'main' into pr/1807" | Re-trigger Greptile
Context used: